<template>
  <a-card :bordered="false">

    <!-- 查询区域 -->
    <div class="table-page-search-wrapper">
      <a-form layout="inline" @keyup.enter.native="searchQuery">
        <a-row :gutter="24">

       <a-col :xl="6" :lg="7" :md="8" :sm="24">
          <a-form-item label="品类选择">
             <a-select
                v-model="queryParam.category"
               style="width: 180px"
              @focus="focus"
              ref="select"
              @change="handleChange"
              placeholder="请选择品类"
            >
               <a-select-option v-for="item in categoryList"  :key="item.id" >
                    {{item.category_name}}
                    </a-select-option>
          </a-select>
          </a-form-item>
        </a-col>

          <a-col :xl="10" :lg="7" :md="8" :sm="24">
            <a-button type="primary" @click="searchQuery" icon="search" style="color: #F9D532;width: 80px;height: 36px;background: #333333;border-style: none;">查询</a-button>
            <a-button type="primary" @click="searchReset" icon="reload" style="color: #F9D532;width: 80px;height: 36px;background: #333333;border-style: none;margin-left: 8px">重置</a-button>
            <a-button @click="openaddproductionstatus(0)" type="primary" icon="plus" style="color: #F9D532;width: 130px;height: 36px;background: #333333;border-style: none;margin-left: 8px">新增生产状态</a-button>
          </a-col>

<!--          <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">-->
<!--            <a-col :xl="6" :lg="7" :md="8" :sm="24">-->
<!--              <a-button type="primary" @click="searchQuery" icon="search" style="color: #F9D532;width: 80px;height: 36px;background: #333333;border-style: none;">查询</a-button>-->
<!--              <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>-->
<!--            -->
<!--            </a-col>-->
<!--          </span>-->
        </a-row>
      </a-form>
    </div>

    <!-- 操作按钮区域 -->
<!--    <div class="table-operator">-->
<!--      &lt;!&ndash; <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button> &ndash;&gt;-->
<!--      <a-button @click="openaddproductionstatus(0)" type="primary" icon="plus" style="color: #F9D532;width: 80px;height: 36px;background: #333333;border-style: none;">新增</a-button>-->
<!--      &lt;!&ndash; <a-button type="primary" icon="download" @click="handleExportXls('单表示例')">导出</a-button> &ndash;&gt;-->
<!--      <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">-->
<!--      </a-upload>-->
<!--    </div>-->


      <a-table
        ref="table"
        size="middle"
        bordered
        rowKey="id"
        :columns="columns"
        :dataSource="dataSource"
        :pagination="ipagination"
        :loading="loading"
        :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
        @change="handleTableChange">

        <div slot="filterDropdown">
          <a-card>
            <a-checkbox-group @change="onColSettingsChange" v-model="settingColumns" :defaultValue="settingColumns">
              <a-row>
                <template v-for="(item,index) in defColumns">
                  <template v-if="item.key!='rowIndex'&& item.dataIndex!='action'">
                    <a-col :span="12"><a-checkbox :value="item.dataIndex">{{ item.title }}</a-checkbox></a-col>
                  </template>
                </template>
              </a-row>
            </a-checkbox-group>
          </a-card>
        </div>
        <a-icon slot="filterIcon" type='setting' :style="{ fontSize:'16px',color:  '#108ee9' }" />

        <span slot="action" slot-scope="text, record">
         <!--  <a @click="getBackCustDetail(record.id)">查看详情</a>&nbsp; -->

          <a @click="openaddproductionstatus(record.id)"  v-if="record.status!=2">编辑</a>&nbsp;
        <!--   <a v-if="record.status==0" @click="custstop(record.id,1)" >停用</a>&nbsp;
            <a v-if="record.status==1" @click="custstop(record.id,0)">启用</a>&nbsp; -->
            <a-popconfirm title="确定删除吗?" @confirm="() => deleteit(record.id)">
                 <a >删除</a>
                </a-popconfirm>

        </span>

      </a-table>
    </div>
    <!-- table区域-end -->

    <!-- 表单区域 -->
    <addProductionStatus ref="modalForm" @aaa="searchQuery"></addProductionStatus>


   <div>
     <a-drawer width="640" placement="right" :closable="false" :visible="visible" @close="onClose">
    <!-- <p :style="[pStyle, pStyle2]">
      User Profile
    </p> -->
    <p :style="pStyle">
      基础信息
    </p>
    <a-row>
      <a-col :span="20">

              <table>
            <tr class="mytr">
              <td class="fatitle">客户名称</td>
              <td class="facontent">{{this.xiangqingdetail.companyName}}</td>
              <td class="fatitle">客户编号</td>
              <td class="facontent">{{ this.xiangqingdetail.companyCode}}</td>
            </tr>
            <tr class="mytr">
              <td class="fatitle">联系人</td>
              <td class="facontent">{{this.xiangqingdetail.realName}}</td>
              <td class="fatitle">联系电话</td>
              <td class="facontent">{{this.xiangqingdetail.phone}}</td>
            </tr>


         <tr class="mytr">
               <td class="fatitle">地址</td>
              <td class="facontent">{{this.xiangqingdetail.address}}</td>
            </tr>
          </table>
      </a-col>
    </a-row>

    <a-divider />
    <p :style="pStyle">
      结算方式
    </p>
    <tr class="mytr">
               <td class="fatitle">结算方式</td>
              <td class="facontent">{{this.xiangqingdetail.isMonthString}}</td>
			  <td class="fatitle">月结额度</td>
			  <td class="facontent">{{this.xiangqingdetail.monthLines}}</td>
			  <td class="fatitle">剩余额度</td>
			  <td class="facontent">{{this.xiangqingdetail.remainingLimit}}</td>
            </tr>
    <a-row>
      <a-col :span="12">
        <description-item title="Position" content="Programmer" />
      </a-col>
      <a-col :span="12">
        <description-item title="Responsibilities" content="Coding" />
      </a-col>
    </a-row>
    <a-row>
      <a-col :span="12">
        <description-item title="Department" content="XTech" />
      </a-col>
      <a-col :span="12">
        <description-item title="Supervisor">
          <template v-slot:content><a>Lin</a></template>
        </description-item>
      </a-col>
    </a-row>
    <a-row>
      <a-col :span="24">
        <description-item
          title="Skills"
          content="C / C + +, data structures, software engineering, operating systems, computer networks, databases, compiler theory, computer architecture, Microcomputer Principle and Interface Technology, Computer English, Java, ASP, etc."
        />
      </a-col>
    </a-row>
    <a-divider />
    <p :style="pStyle">
      登录账号及密码
    </p>
    <a-row>
      <a-col :span="20">
           <table>
            <tr class="mytr">
              <td class="fatitle">登录账号</td>
              <td class="facontent">{{this.xiangqingdetail.userName}}</td>
            </tr>

         <tr class="mytr">
               <td class="fatitle">备注</td>
              <td class="facontent">{{this.xiangqingdetail.remark}}</td>
            </tr>


			<div class="submit">
			  <button class="c1" @click="onClose()">关闭</button>

			</div>
          </table>
      </a-col>

    </a-row>

  </a-drawer>

   </div>

  </a-card>
</template>

<script>
 import addProductionStatus from './modules/addProductionStatus'
  import JSuperQuery from '@/components/jeecg/JSuperQuery.vue';
  import JInput from '@/components/jeecg/JInput.vue';
  import {initDictOptions, filterDictText,filterDictTextByCache} from '@/components/dict/JDictSelectUtil'
  import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  import Vue from 'vue'
  import { filterObj } from '@/utils/util';
  import {postAction,deleteAction, getAction,downFile,getFileAccessHttpUrl } from '@/api/manage'


  //高级查询modal需要参数
  const superQueryFieldList=[
    {
      type: "string",
      value: "name",
      text: "用户名"
    }, {
      type: "int",
      value: "age",
      text: "年龄"
    }, {
      type: "date",
      value: "birthday",
      text: "生日"
    }
  ]
  export default {
    name: "ProductionStatusList",
    mixins:[JeecgListMixin],
    components: {
      addProductionStatus,
      JSuperQuery,

      JInput
    },
    data() {
      return {

       xiangqingdetail:{

       },
   categoryList:{ //用来存放取到的品类

        },
        //这里是给弹框用的
          visible: false,
      pStyle: {
        fontSize: '16px',
        color: 'rgba(0,0,0,0.85)',
        lineHeight: '24px',
        display: 'block',
        marginBottom: '16px',
      },
      pStyle2: {
        marginBottom: '24px',
      },


        customerDetail:[],
        description: '单表示例列表',
        //字典数组缓存
        sexDictOptions: [],
        importExcelUrl:`${window._CONFIG['domianURL']}/test/jeecgDemo/importExcel`,
        //表头
        columns:[],
        //列设置
        settingColumns:[],
        //列定义
        defColumns: [
			{
			  title: '排序',
			  align: "center",
			  dataIndex: 'sort'
			},
          // {
          //   title: '序号',
          //   dataIndex: '',
          //   key: 'rowIndex',
          //   width: 60,
          //   align: "center",
          //   customRender: function (t, r, index) {
          //     return parseInt(index) + 1;
          //   }
          // },
          {
            title: '生产状态名称',
            align: "center",
            dataIndex: 'dataname'
          },
		  {
		    title: '编码',
		    align: "center",
		    dataIndex: 'code'
		  },
          {
            title: '品类',
            align: "center",
            dataIndex: 'categoryName'
          },
   //   {
   //     title: '类型',
   //     align: "center",
   //     dataIndex: 'type',
   //     customRender: (type) => {
   //       //字典值替换通用方法
   //       if(type==0)
   //       return "无";
   //       else  if(type==1)
   //       return "面料来源";
   //   	 else  if(type==2)
 	 //     return "业务类型";
		 // else  if(type==3)
	  //    return "选择包装";
		 // else  if(type==4)
		 // return "式样";
		 // else  if(type==5)
		 // return "紧急指数";
		 // else  if(type==6)
		 // return "改款打样";
   //     }
   //   },
     //      {
     //        title: '状态',
     //        align: "center",
     //        dataIndex: 'status',
     //        customRender: (status) => {
     //          //字典值替换通用方法
     //          if(status==1)
     //          return "停用";
     //          else  if(status==0)
     //          return "启用中";
			  // else
			  //   return "已删除";
     //        }
     //      },

          {
            title: '创建时间',
            align: "center",
            dataIndex: 'createTime'
          },

          {
            title: '操作',
            dataIndex: 'action',
            align: "center",
            scopedSlots: {
              filterDropdown: 'filterDropdown',
              filterIcon: 'filterIcon',
              customRender: 'action'},
          }
        ],
        url: {
          list: "/ProductionStatus/list",
          delete: "/ProductionStatus/deleteProductionStatus",
		  update:"/ProductionStatus/updatestatus",
          deleteBatch: "/test/jeecgDemo/deleteBatch",
          exportXlsUrl: "/test/jeecgDemo/exportXls",
          detail:"/BackCust/getBackCustDetail",
		    pingleilist:"/Discount/getallcategory"
        },
        fieldList:superQueryFieldList
      }
    },
    methods: {
    //查询所有品类
          getallcategory(){
           getAction(this.url.pingleilist).then((res)=>{
              if(res.success){

               this.categoryList=res.result;
               console.log("没有值吗"+  this.categoryList[0].category_name);
              }else{
                that.$message.warning(res.message);
              } })
      },

    //删除
     deleteit(id){
       var that=this;

         getAction(that.url.delete, {id: id}).then((res) => {
              if (res.success) {
                that.$message.success(res.message);
                that.loadData();

              } else {
                that.$message.warning(res.message);
              }
            }).finally(() => {
              that.loading = false;
            });
     },
      //打开新增生产状态
    openaddproductionstatus: function (id) {
      if(id=='0' || id==0){
        this.$refs.modalForm.edit(id);
        this.$refs.modalForm.title = "新增生产状态";
        this.$refs.modalForm.disableSubmit = false;
      }else {
        this.$refs.modalForm.edit(id);
        this.$refs.modalForm.title = "编辑生产状态";
        this.$refs.modalForm.disableSubmit = false;
      }

    },

  //这里是要跳到公司详情那里去的
  see_ConpanyDetail(id,companyCode,userId){
 this.$router.push({path:'/Customerdetail',query: {
   id:id,
   companyCode:companyCode,
   userId:userId
 }})
  },
    //跳到新增用户的界面去
       addCustomerHtml(id){
         if(id==0){
			         this.$router.push({path:'/addCustomer',query: {id:id}})
				 }else{
					   this.$router.push({path:'/updateCustomer',query: {id:id}})
				 }

      },
    showDrawer() {
      this.visible = true;
    },
    onClose() {
      this.visible = false;
    },

    //获取客户详情信息的方法
    getBackCustDetail(id){
         this.visible = true;
       console.log("看看进来了吗");
       getAction(this.url.detail,{userId: id}).then((res)=>{
          if (res.success) {
              this.xiangqingdetail=res.result;

              } else {
                that.$message.warning(res.message);
              }
            });
    },


     //编辑或者停用
     custstop(id,status){
       var that=this;

         getAction(that.url.update, {id: id,status:status}).then((res) => {
              if (res.success) {
                that.$message.success(res.message);
                that.loadData();

              } else {
                that.$message.warning(res.message);
              }
            }).finally(() => {
              that.loading = false;
            });
     },

      getQueryParams(){
        //高级查询器
        let sqp = {}
        if(this.superQueryParams){
          sqp['superQueryParams']=encodeURI(this.superQueryParams)
          sqp['superQueryMatchType'] = this.superQueryMatchType
        }
        var param = Object.assign(sqp, this.queryParam, this.isorter ,this.filters);

        param.field = this.getQueryField();
        param.pageNo = this.ipagination.current;
        param.pageSize = this.ipagination.pageSize;
        delete param.birthdayRange; //范围参数不传递后台
        return filterObj(param);
      },
      initDictConfig() {
        console.log("--我才是真的方法!--")
        //初始化字典 - 性别
        initDictOptions('sex').then((res) => {
          if (res.success) {
            this.sexDictOptions = res.result;
          }
        });
      },
      onetomany: function () {
        this.$refs.jeecgDemoTabsModal.add();
        this.$refs.jeecgDemoTabsModal.title = "编辑";
      },
      //跳转单据页面
      jump() {
        this.$router.push({path: '/jeecg/helloworld'})
      },
      onBirthdayChange: function (value, dateString) {
        console.log(dateString[0],dateString[1]);
        this.queryParam.birthday_begin=dateString[0];
        this.queryParam.birthday_end=dateString[1];
      },
      //列设置更改事件
      onColSettingsChange (checkedValues) {
        var key = this.$route.name+":colsettings";
        Vue.ls.set(key, checkedValues, 7 * 24 * 60 * 60 * 1000)
        this.settingColumns = checkedValues;
        const cols = this.defColumns.filter(item => {
          if(item.key =='rowIndex'|| item.dataIndex=='action'){
            return true
          }
          if (this.settingColumns.includes(item.dataIndex)) {
            return true
          }
          return false
        })
        this.columns =  cols;
      },
      initColumns(){
        //权限过滤（列权限控制时打开，修改第二个参数为授权码前缀）
        //this.defColumns = colAuthFilter(this.defColumns,'testdemo:');

        var key = this.$route.name+":colsettings";
        let colSettings= Vue.ls.get(key);
        if(colSettings==null||colSettings==undefined){
          let allSettingColumns = [];
          this.defColumns.forEach(function (item,i,array ) {
            allSettingColumns.push(item.dataIndex);
          })
          this.settingColumns = allSettingColumns;
          this.columns = this.defColumns;
        }else{
          this.settingColumns = colSettings;
          const cols = this.defColumns.filter(item => {
            if(item.key =='rowIndex'|| item.dataIndex=='action'){
              return true;
            }
            if (colSettings.includes(item.dataIndex)) {
              return true;
            }
            return false;
          })
          this.columns =  cols;
        }
      }
    },
    created() {
      this.initColumns();
	      this.getallcategory();
    },
  }
</script>
<style scoped>
  @import '~@assets/less/common.less';
  @import '~@assets/less/style.min.css';
  @import '~@assets/less/addzhaopin.css';
  @import '~@assets/less/newstyle.css';
    .fatitle {
    height: 34px;
    width: 82px;
    background: rgb(242 242 242);
    text-align: center;
  }

  .facontent {
    width: 180px;
    overflow: hidden;
    text-align: center;
  }

</style>